package com.fortune.dao;

import com.fortune.dto.in.dUnit.DUnitAddDto;
import com.fortune.dto.in.dUnit.DUnitEditDto;
import com.fortune.dto.in.dUnit.DUnitListDto;
import com.fortune.vo.dProduct.DProduceUnit;
import com.fortune.vo.dUnit.DUnit;
import org.apache.ibatis.annotations.Param;

import java.util.List;

public interface DUnitDao {
    /**
     * 查询商品单位
     * @param did
     * @return
     */
    List<DUnit> queryDunit(@Param("did") String did, @Param("listDto") DUnitListDto listDto);

    /**
     * 查询商品单位个数
     * @param did
     * @param listDto
     * @return
     */
    int queryMunitCount(@Param("did") String did, @Param("listDto") DUnitListDto listDto);

    /**
     * 添加商品单位
     * @param did
     * @param addDto
     * @return
     */
    int addDunit(@Param("did") String did, @Param("addDto") DUnitAddDto addDto);

    /**
     * 编辑商品单位
     * @param did
     * @param editDto
     * @return
     */
    int editDunit(@Param("did") String did, @Param("editDto") DUnitEditDto editDto);

    /**
     * 删除商品单位
     * @param did
     * @param dUnitId
     * @return
     */
    int deleteDunit(@Param("did") String did, @Param("dUnitId") String dUnitId);

    /**
     * 查询该名称是否存在
     * @param did
     * @param addDto
     * @return
     */
    int queryDunitExist(@Param("did") String did, @Param("addDto") DUnitAddDto addDto);

    /**
     * 编辑时查询该名称是否存在
     * @param did
     * @param editDto
     * @return
     */
    int queryEditDunitExist(@Param("did") String did, @Param("editDto") DUnitEditDto editDto);

    /**
     * 查询商品单位
     * @param did
     * @return
     */
    List<DProduceUnit> queryProduceDunit(String did);
}
